package org.example.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

/**
 * 实现一个配置类，使得把jedis提供给spring做为bean管理
 */
@Configuration
public class JedisConfig {

    private static JedisPool jedisPool;
    @Bean("jedis")
    public Jedis jedis(){
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        //配置信息
        // 最大连接
         jedisPoolConfig.setMaxTotal(8);
        // 最大空闲连接
        jedisPoolConfig.setMaxIdle(8);
        // 最小空闲连接
        jedisPoolConfig.setMinIdle(0);
        // 设置最长等待时间， ms
        jedisPoolConfig.setMaxWaitMillis(200);
        jedisPool = new JedisPool(
                jedisPoolConfig,
                "127.0.0.1",
                6379,
                1000,
                "123456",
                2,
                false);
        return jedisPool.getResource();
    }
}
